package com.xbongbong.pro.statistic.pojo.dto;

import com.xbongbong.paas.domain.entity.PaasFormExplainEntity;
import com.xbongbong.paas.toolbox.exception.XbbException;
import com.xbongbong.paas.toolbox.wrap.BaseDTO;
import com.xbongbong.pro.domain.entity.ChartEntity;
import com.xbongbong.pro.domain.entity.DataWarningEntity;
import com.xbongbong.pro.domain.entity.DataWarningHistoryEntity;
import com.xbongbong.pro.message.pojo.dto.MessageRabbitMqDTO;
import com.xbongbong.saas.domain.entity.WorkOrderExplainEntity;
import com.xbongbong.sys.domain.entity.UserEntity;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import java.util.List;
import java.util.Map;

/**
 * 分组排序
 *
 * @author zcp
 * @date 2019/1/10
 * @since v1.0
 * @version v1.0
 */
@Setter
@Getter
@ToString
public class HandleSingleChartDTO extends BaseDTO {

    private static final long serialVersionUID = -7206173862298002209L;

    private Integer executeCount;

    private Integer executeNumber;

    private String corpid;

    private ChartEntity chartEntity;

    private Map<Long,List<DataWarningEntity>> chartIdWithDwEntityMap;

    private Long dwTriggerTime;

    private Map<Long,List<UserEntity>> executorMap;

    private Map<Long, PaasFormExplainEntity> formIdWithExplainMap;

    private Map<Long,String> formIdNameMap;

    private Map<Long, WorkOrderExplainEntity> workOrderFormIdWithExplainMap;

    private Map<Long,String> workOrderFormIdNameMap;

    private Map<Long,Map<String,String>> chartIdWithComputedAttrMap;

    private List<DataWarningHistoryEntity> insertHistoryList;

    private List<MessageRabbitMqDTO> mqDTOArrayList;

    private Map<Long,List<String>> executorUserIdMap;

    private List<DataWarningEntity> updateList;

    private Integer page;

    Map<Long,Integer> dwIdTriggerNumMap;

    public HandleSingleChartDTO(Integer executeCount, Integer executeNumber, String corpid, ChartEntity chartEntity, Map<Long, List<DataWarningEntity>> chartIdWithDwEntityMap, Long dwTriggerTime, Map<Long, List<UserEntity>> executorMap, Map<Long, PaasFormExplainEntity> formIdWithExplainMap, Map<Long, String> formIdNameMap, Map<Long, WorkOrderExplainEntity> workOrderFormIdWithExplainMap, Map<Long, String> workOrderFormIdNameMap,Map<Long,Map<String,String>> chartIdWithComputedAttrMap, List<DataWarningHistoryEntity> insertHistoryList, List<MessageRabbitMqDTO> mqDTOArrayList, Map<Long, List<String>> executorUserIdMap, List<DataWarningEntity> updateList, Integer page,Map<Long,Integer> dwIdTriggerNumMap) {
        this.executeCount = executeCount;
        this.executeNumber = executeNumber;
        this.corpid = corpid;
        this.chartEntity = chartEntity;
        this.chartIdWithDwEntityMap = chartIdWithDwEntityMap;
        this.dwTriggerTime = dwTriggerTime;
        this.executorMap = executorMap;
        this.formIdWithExplainMap = formIdWithExplainMap;
        this.formIdNameMap = formIdNameMap;
        this.workOrderFormIdWithExplainMap = workOrderFormIdWithExplainMap;
        this.workOrderFormIdNameMap = workOrderFormIdNameMap;
        this.chartIdWithComputedAttrMap = chartIdWithComputedAttrMap;
        this.insertHistoryList = insertHistoryList;
        this.mqDTOArrayList = mqDTOArrayList;
        this.executorUserIdMap = executorUserIdMap;
        this.updateList = updateList;
        this.page = page;
        this.dwIdTriggerNumMap = dwIdTriggerNumMap;
    }
    }
